package version

import (
	"fmt"
	"os"
	"text/tabwriter"
)

var (
	Version = "dev"
	Commit  = "none"
	// BuildTime 采用的日期格式是 RFC3339，这是一种 ISO 8601 标准的子集，格式为 "YYYY-MM-DDTHH:mm:ssZ"，其中 "T" 是日期和时间的分隔符，"Z" 表示协调世界时（UTC）。
	BuildTime = "1997-01-01 00:00:00"
)

// Print 函数用于打印版本信息，包括版本号、提交哈希和构建时间。
func Print() {
	w := tabwriter.NewWriter(os.Stdout, 0, 0, 2, ' ', 0)
	_, _ = fmt.Fprintln(w, "Version:\t", Version)
	_, _ = fmt.Fprintln(w, "Commit:\t", Commit)
	_, _ = fmt.Fprintln(w, "Build Time:\t", BuildTime)
	_ = w.Flush()
}
